给定四种商品,分别是薯片(crisps)、爆米花(popcorn)、巧克力(chocolate)和可乐(cola),单价分别对应为3.0元/公斤、2.5元/公斤、4.0元/公斤、3.5元/份。
首先在屏幕上显示以下菜单:
[1] crisps
[2] popcorn
[3] chocolate
[4] cola
[0] exit
用户可以输入编号1~4查询对应食品的单价。当连续查询次数超过5次时,程序应自动退出查询;不到5次而用户输入0即退出;输入其他编号,显示价格为0。
输入格式:
输入在一行中给出用户连续输入的若干个编号。
输出格式:
首先在屏幕上显示菜单。然后对应用户的每个输入,在一行中按格式“price = 价格”输出查询结果,其中价格保留一位小数。当用户连续查询次数超过5次、或主动输入0时,程序结束,显示“Thanks”
#include<stdio.h>
int main()
{
int choice,i;
double price;
printf("[1] crisps\n");
printf("[2] popcorn\n");
printf("[3] chocolate\n");
printf("[4] cola\n");
printf("[0] exit\n");
for(i=1;i<=5;i++)
{
scanf("%d",&choice);
if(choice==0)
break;
switch(choice)
{
case 1:price = 3.0;break;
case 2:price = 2.5;break;
case 3:price = 4.0;break;
case 4:price = 3.5;break;
default:price = 0.0;break;
}
printf("price = %0.1f\n",price);
}
printf("Thanks\n");
return 0;
}
本题要求编写程序,找出给定的n个数中的最大值及其对应的最小下标(下标从0开始)。
输入格式:
输入在第一行中给出一个正整数n(1<n≤10)。第二行输入n个整数,用空格分开。
输出格式:
在一行中输出最大值及最大值的最小下标,中间用一个空格分开。
#include <stdio.h>
int main()
{
int a[10], n;
int i;
scanf("%d", &n);
for(i=0; i<n; i++)
{
scanf("%d", &a[i]);
}
int max = a[0], index = 0;
for(i=1; i<n; i++)
{
if(a[i]>max)
{
max = a[i];
index = i;
}
}
printf("%d %d", max, index);
return 0;
}
对于给定的正整数N,求它的位数及其各位数字之和。
输入格式:
输入在一行中给出一个不超过10
9
的正整数N。
输出格式:
在一行中输出N的位数及其各位数字之和,中间用一个空格隔开
#include <stdio.h>
int main()
{
int count=0,sum=0;
int N,a;
scanf("%d",&N);
while(N>0)
{
a=N%10;
sum = sum + a;
N = N / 10;
count++;
}
printf("%d %d",count,sum);
return 0;
}