实验2
任务一
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> int main() { int num; scanf("%d", &num); printf("2049%04d\n", num); scanf("%d", &num); printf("2049%04d\n", num); scanf("%d", &num); printf("2049%04d\n", num); return 0; }
%04d作用:让输出数占四位,多余位置用0填充
#include <stdio.h> int main() { int num; while (scanf_s("%d", &num)) printf("2049%04d\n", num); return 0; }
任务二
#include <stdio.h> int main() { char ans1, ans2; printf("复习了没? (输入y或Y表示复习了,输入n或N表示没复习) : "); ans1 = getchar(); getchar(); printf("\n动手敲代码了没? (输入y或Y表示敲了,输入n或N表示木有敲) : "); ans2 = getchar(); if ((ans1='y' || 'Y')&&(ans2='y'||'Y')) printf("\n罗马不是一天建成的:)\n"); else printf("\n罗马不是一天毁灭的。。。\n"); return 0; }
任务三
#include <stdio.h> int main() { char x; x = getchar(); if (x>='0'&&x<='9') printf("%c是数字字符\n", x); else if (x >= 'a'&&x <= 'z'||x >= 'A'&&x <= 'Z') printf("%c是英文字母\n", x); else printf("%c是其它字符\n", x); return 0; }
任务四
#include <stdio.h> int main() { int n, a, i; double s, b; while (scanf_s("%d %d", &n, &a) != EOF) { s = 0; b = a; for (i = 1; i <= n; i++) { s = s + i / b; b = b * 10 + a; } printf("n = %d, a = %d, sum = %f\n", n, a, s); } return 0; }
任务五
#include <stdio.h> #include <stdlib.h> #include <time.h> const int N = 5; int main() { int x, n; srand(time(0)); for (n = 1; n <= N; n++) { x = rand() % 100; printf("%3d", x); } printf("\n"); return 0; }
任务六
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include <time.h> int main() { int x, y, i; srand(time(0)); x = rand() % 32; printf("猜猜12月哪一天是你的luck day\n"); printf("开始喽,你有三次机会,猜吧(1~31):\n"); for (i = 1; i <4; i++) { scanf("%d", &y); if (x == y) { printf("猜对啦,恭喜\n"); break; } else if (y > x) printf("你猜的日期晚了,luck day悄悄溜到前面啦\n"); else if (y < x) printf("你猜的日期早了,luck day还没到呢\n"); } if (i == 4) printf("次数用完啦。偷偷告诉你:12月,你的luck day是%d号\n",x); return 0; }
任务七
#include <stdio.h> int main() { int n, i; scanf_s("%d", &n); for(i=1;i<n+1;++i) { printf(" o \n"); printf("<H>\n"); printf("I I\n"); printf("\n"); } return 0; }
#include<stdio.h> int main() { int n, i; scanf_s("%d", &n); for (i = 1; i < n+1; i++) {printf(" o \t"); } printf("\n"); for (i = 1; i < n+1; i++) {printf("<H>\t");} printf("\n"); for (i = 1; i < n+1; i++) {printf("I I\t");} printf("\n"); return 0;
#include<stdio.h> int main() { int n, i, a, k; scanf_s("%d", &n); for (k = 0; k < n; k++) { for (a = 0; a < k; a++) {printf("\t"); } for (i = 0; i < 2 * n - 1 - 2 * k; i++) {printf(" o \t"); } printf("\n"); for (a = 0; a < k; a++) {printf("\t");} for (i = 0; i < 2 * n - 1 - 2 * k; i++) {printf("<H>\t");} printf("\n"); for (a = 0; a < k; a++) {printf("\t");} for (i = 0; i < 2 * n - 1 - 2 * k; i++) {printf("I I\t");} printf("\n"); } return 0; }
实验总结:让我对for语句的用法更加清晰,同时对嵌套语句的理解有所提升。