このコードはscan_uintで3桁の非負の数を読み取ってmake_intで適当な数を作ってその数を9で割った余りによって表示をかえるというものです.
report_fortune.c: In function ‘main’:
report_fortune.c:41: error: expected ‘)’ before ‘!’ token
report_fortune.c:41:28: warning: missing terminating ' character
report_fortune.c:41: error: missing terminating ' character
report_fortune.c:42: error: expected ‘;’ before ‘}’ token
#include<stdio.h>
int scan_uint(void)
{
int tmp;
do{
printf("3桁の非負の整数を入力してください:");
scanf("%d",&tmp);
if(tmp<100 || tmp>999)
puts("3桁で非負の整数にしてください.");
}while(tmp<100 || tmp>999);
return(tmp);
}
int make_int(int num)
{
int tmp=0;
if(num>0){
do{
tmp=tmp*10+num%10;
num/=10;
}while(num>0);
}
int saika=tmp/100;
int saijo=tmp%10;
tmp=tmp*saika+saijo*3;
return(tmp);
}
int main(void)
{
int nx=scan_uint();
switch(make_int(nx)%9){
case 0:puts("A"); break;
case 1:
case 2:puts("B"); break;
case 3:
case 4:
case 5:puts("C"); break;
case 6:
case 7:puts("D"); break;
case 8:puts("E"); break;
}
return(0);
}