给定四种水果,分别是苹果(apple)、梨(pear)、桔子(orange)、葡萄(grape),单价分别对应为3.00元/公斤、2.50元/公斤、4.10元/公斤、10.20元/公斤。
首先在屏幕上显示以下菜单:
[1] apple
[2] pear
[3] orange
[4] grape
[0] exit
用户可以输入编号1~4查询对应水果的单价。当连续查询次数超过5次时,程序应自动退出查询;不到5次而用户输入0即退出;输入其他编号,显示价格为0。
输入格式:
输入在一行中给出用户连续输入的若干个编号。
输出格式:
首先在屏幕上显示菜单。然后对应用户的每个输入,在一行中按格式“price = 价格”输出查询结果,其中价格保留两位小数。当用户连续查询次数超过5次、或主动输入0时,程序结束。
输入样例1:
3 -1 0 2
输出样例1:
[1] apple
[2] pear
[3] orange
[4] grape
[0] exit
price = 4.10
price = 0.00
输入样例2:
1 2 3 3 4 4 5 6 7 8
输出样例2:
[1] apple
[2] pear
[3] orange
[4] grape
[0] exit
price = 3.00
price = 2.50
price = 4.10
price = 4.10
price = 10.20
#include <stdio.h>
int main(int argc, const char *argv[])
{
int no;
char* menu[5] = {"exit","apple","pear","orange","grape"};
float price[5] = {0,3.00,2.50,4.10,10.20};
int i=0;
for(i=1;i<5;i++)
{
printf("[%d] %s\n",i,menu[i]);
}
printf("[0] %s\n",menu[0]);
for(i=0;i<5;i++)
{
scanf("%d",&no);
if(no>0 && no<=4)
{
printf("price = %.2f\n",price[no]);
}
else if(0 == no)
{
break;
}
else
{
printf("price = %.2f\n",price[0]);
}
}
return 0;
}
注意
1、字符串数组的定义:
char* str[2] = {"hello","world"};
此时,str[0]中存储的数据是字符串“hello”的首地址,str[1]中存储的数据是字符串“world”的首地址。str[0]和str[1]的类型为char*。2、字符串的定义:
char* str0 = "helle";
char str1[] = {'w','o','r','l','d'};
2、格式符 %s 对应的数据类型为char*,专用于有 \0 结尾的数组即字符串。
本文链接:https://shengto.top/c/pat_7.html
转载时须注明出处及本声明