题目描述
假设某班级有10名同学,有2名候选人竞选班长。分别输入两名候选人序号,计算候选人票数。非侯选人数字计为无效票数。
输入
程序运行时第一行输入10个整数,以空格为分隔。 1表示第1侯选人,2表示第2侯选人,其它表示无效票数。
输出
输出侯选人的票数及无效票的数量。 第一行输出第1名候选人票数,下一行输出第2名候选人票数。如果存在无效票输出无效票数,否则不输出。(侯选人后面有冒号,之后是空格,然后是票数)
样例输入
Sample Input 1:
1 1 2 2 1 2 2 3 4 5
Sample Input 2:
1 1 1 1 1 2 2 2 2 2
样例输出
Sample Output 1:
candidate1: 3
candidate2: 4
Invalid: 3
Sample Output 2:
candidate1: 5
candidate2: 5
提示
printf("candidate1: %d\n",num1); printf("candidate2: %d\n",num2); 无效输出printf("Invalid: %d",num3);
#include <stdio.h> #include <stdlib.h> int main() { int a,b,n,k,i; a=0; b=0; k=0; for(i=1;i<=10;i++) { scanf("%d",&n); if(n==1) a++; else if(n==2) b++; else k++; } printf("%d\n",a); printf("%d\n",b); printf("%d\n",k); return 0; }
#include<stdio.h> int main() { printf("某班级有10名同学,有2名候选人竞选班长.\n分别输入两名候选人序号,1表示第1侯选人,2表示第2侯选人,其它表示无效票数.\n(每个整数以空格分隔,只能是个位数或者其它单个字符,多个则输入错误)\n"); char num[19]; int i=0, num1=0, num2=0, num3=0; for(i=0;i<19;i++) { num[i]=getchar(); if(i%2!=0 && num[i]!=' ') { printf("输入错误!!\n"); i=1; break; } if(num[i]=='1') num1++; else if(num[i]=='2') num2++; else num3++; } if(i==19) { printf("candidate1: %d\n",num1); printf("candidate2: %d\n",num2); printf("Invalid: %d\n",num3-9); } return 0; }