5-1
语句填空:下列 for循环语句将输出: 0 1 2 0 1 2 0 1 2
for( i=1; i<=9; i++ )
printf(“%2d”, (i-1)%3);
5-2
执行以下程序段,输入12-78.5,输出78.5-12。
int n;
double x;
scanf(“%d-%lf”,&n,&x);;
printf(“%.1f-%d\n”, x, n);
5-3
表达式求值:
当a=1,b=2,c=3时,打印语句printf(“%d#%d#”,(a, b), a>b?(c=4):(c=5))的输出是__2#5#____。
5-4
执行以下程序段,输入3,输出(3)。
char ch;
scanf(“%c”,&ch);
putchar(‘(’);
printf(“%c”,ch);
putchar(‘)’);
5-5
输入一个正整数n,再输入n个字符,将这些字符输出,输出时在字符之间加一个空格,最后一个字符的后面没有空格。
输入格式:
在第1行输入一个正整数n
在第2行输入n个字符
输出格式:
在一行内输出n个字符,请注意:字符之间有一个空格,最后一个字符的后面没有空格。
输入样例:
5
Happy
输出样例:
H a p p y
#include <stdio.h>
int main()
{
char ch;
int first = 1, k, n;
scanf("%d\n", &n);
for(k = 1; k <= n; k++){
ch=getchar();
if ( first == 1){
putchar(ch);
first+=1;
}else{
printf(" ");
putchar(ch);
}
}
return 0;
}
5-9
本题完成如下求解:
设现在时针指向8点,那么t(t>0)小时后时针指向的点数。
#include <stdio.h>
int main()
{
int t,b;
scanf(“%d”,&t);
b=(8+t-1)%12+1;
printf(“%d”,b);
return 0;
}
//不用(8+t)%12,避免出现指针指向0。t=4时 ,是12点,但是输出0
5-10
输入一个2位数a,计算出它的2位数字之和赋值给b
#include <stdio.h>
int main()
{
int a,b;
scanf(“%d”,&a);
b=(a%10)+(a/10);
printf(“%d”,b);
return 0;
}
5-11
输入某年某月某日,判断这一天是这一年的第几天?
#include <stdio.h>
int main(){
int year,month,day;
int sum;
int leap;
int T;
scanf("%d",&T);
while(T--) {
scanf("%d %d %d",&year,&month,&day)