【程序31】
题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续
判断第二个字母。
1. 程序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或 if 语句判断第二个字母。
2.程序源代码:
#include<stdio.h> #include<stdlib.h> #include<conio.h> int main() { char letter; scanf("%c" , &letter); getchar(); switch(letter) { case 's':printf("please input second letter\n"); if((letter=getch())=='a') printf("saturday\n"); else if ((letter=getch())=='u') printf("sunday\n"); else printf("data error\n"); break; case 'f':printf("friday\n");break; case 'm':printf("monday\n");break; case 't':printf("please input second letter\n"); if((letter=getch())=='u') printf("tuesday\n"); else if ((letter=getch())=='h') printf("thursday\n"); else printf("data error\n"); break; case 'w':printf("wednesday\n");break; default: printf("data error\n"); } return 0;
}
【程序32】
题目:
press any key to change color, do you want to try it. please hurry up!1. 程序分析:
2.程序源代码:
#include<stdio.h> #include<stdlib.h> #include<conio.h> int main() { int color; for(color = 0; color < 8; color++) { textbackground(color); //tc实现 别的不识别 cprintf("this is color %d\r\n", color); cprintf("press any key to continue\r\n"); getch();/*输入字符看不见*/ } return 0; }
【程序33】
题目:学习
gotoxy()
与
clrscr()
函数
1. 程序分析:
2.程序源代码:
#include<stdio.h> #include<stdlib.h> #include<conio.h> #include<windows.h> //TC实现 不写了 没有用 int main() { clscr(); textbackground(2); gotoxy(1,5); return 0; }
【程序34】
题目:练习函数调用
1. 程序分析:
2.程序源代码:
#include<stdio.h> void three_hellos(); int main() { three_hellos();/*调用此函数*/ return 0; } void hello_world() { printf("helloworld!\n"); } void three_hellos() { int counter; for (counter=1;counter<=3;counter++) hello_world();/*调用此函数*/ }
【程序35】
题目:文本颜色设置
1.程序分析:
2.程序源代码:
#include<stdio.h> //没啥用 TC实现 int main() { int color; for(color=1;color<16;color++) { textcolor(color);/*设置文本颜色*/ ("this is color %d\r\n",color); } textcolor(128+15); cprintf("this is blinking\r\n"); return 0; }
【程序36】
题目:求100之内的素数
1.程序分析:
2.程序源代码:
#include<stdio.h> #include<math.h> int main() { int i, j, k, n = 0; for(i = 2; i <= 100; i++) { k = sqrt(i); for(j = 2; j <=k; j++) { if(i % j==0) break; } if(j > k) { printf("%d\t",i); n++; } } printf("100以内共有%d个素数",n); return 0; }
【程序37】
题目:对10个数进行排序
1.程序分析:可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换,
下次类推,即用第二个元素与后8个进行比较,并进行交换。
2.程序源代码:
#include<stdio.h> #include<math.h> #define N 10 int main() { int i, j,temp, a[N]; printf("请输入10个数字:"); for(i = 0; i< N; i++) { scanf("%d" , &a[i]); } for(i=0;i<N-1;i++) { int min=i; for(j=i+1;j<N;j++) if(a[min]>a[j]) min=j; if(min!=i) { temp=a[min]; a[min]=a[i]; a[i]=temp; } } for( i=0; i<N; i++) { printf("%d\t",a[i]); } return 0; }
【程序38】
题目:求一个3*3矩阵对角线元素之和
1.程序分析:利用双重for循环控制输入二维数组,再将a[i][i]累加后输出。
2.程序源代码:
#include<stdio.h> #include<math.h> #define N 3 int main() { int i, j, sum = 0, a[N][N]; for(i = 0; i < N; i++) { for(j = 0; j < N; j++) { scanf("%d" , &a[i][j]); } sum += a[i][i]; } printf("%d",sum); return 0; }
【程序39】
题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
1. 程序分析:首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后
此元素之后的数,依次后移一个位置。
2.程序源代码:
#include<stdio.h> int main() { int a[11]={1,4,6,9,13,16,19,28,40,100}; int temp1,temp2,number,end,i,j; printf("The original array is:\n"); for(i=0;i<10;i++) printf("%4d",a[i]); printf("\ninsert a new number: "); scanf("%d",&number); end=a[9]; if(number>end) a[10]=number; else { for(i=0;i<10;i++) { if(a[i]>number) { temp1=a[i]; a[i]=number; for(j=i+1;j<11;j++) { temp2=a[j]; a[j]=temp1; temp1=temp2; } break; } } } for(i=0;i<11;i++) printf("%4d",a[i]); printf("\n"); return 0; }
【程序40】
题目:将一个数组逆序输出。
1.程序分析:用第一个与最后一个交换。
2.程序源代码:
#include<stdio.h> #define N 10 int main() { int a[N]={0,1,2,3,4,5,6,7,8,9}; int i,t; printf("The original array is:\n"); for(i=0;i<N;i++) printf("%d ",a[i]); for(i=0;i<N/2;i++) { t=a[i]; a[i]=a[N-1-i]; a[N-1-i]=t; } printf("\nThe sorted array is:\n"); for(i=0;i<N;i++) printf("%d ",a[i]); printf("\n"); return 0; }