2018.5.7 计算机课作业

1、按金字塔形状打印杨辉三角形。
#include <stdio.h>
int main() {
	int count_line, i, j, data[100][100];
	printf("请输入打印的行数:");
	scanf("%d", &count_line);
	for (i = 0; i < count_line ; i++) {
		data[i][0] = 1;
		for (j = 1; j <= i - 1; j++) {
			data[i][j] = data[i-1][j] + data[i-1][j-1];
		}
		data[i][j] = 1;
	}
	for (i = 0; i < count_line ; i++) {
		for (j = 0; j < count_line - i; j++) {
			printf("  ");
		}
		for (j = 0; j <= i; j++) {
			printf("%4d", data[i][j]);
		}
		putchar('\n');
	}
	return 0;
}
2、输入一个字符串形式的数字,将其转化为数值输出(如输入字符串“123”,输出数字123,仅考虑无符号整数的情况)。
#include <stdio.h>
#include <string.h>
int main() {
	printf("请输入一个字符串:");
	char string[1000];
	gets(string);
	int i, length, result = 0, pow = 1;
	length = strlen(string);
	for (i = length - 1; i >= 0; i--) {
		result += pow * (string[i] - 48);
		pow *= 10;
	}
	printf("结果为:%d\n", result);
	return 0;
}
3、编程输入3个字符串,并输出其中最小的字符串。
#include <stdio.h>
#include <string.h>
int main() {
	char str1[100], str2[100], str3[100];
	printf("请输入第一个字符串:");
	gets(str1);
	printf("请输入第二个字符串:");
	gets(str2);
	printf("请输入第三个字符串:");
	gets(str3);
	char *min = str1;
	if (strcmp(str2, min) < 0) {
		min = str2;
	}
	if (strcmp(str3, min) < 0) {
		min = str3;
	}
	printf("最小的字符串为:%s\n", min);
	return 0;
}
4、编写程序输入3个整数,利用指针对其按照从大到小排序并输出。
#include <stdio.h>
int main() {
	printf("请依次输入三个整数:");
	int num1, num2, num3;
	scanf("%d", &num1);
	scanf("%d", &num2);
	scanf("%d", &num3);
	int *first = &num1, *second = &num2, *third = &num3;
	int *temp;
	if (*second > *first) {
		temp = second;
		second = first;
		first = temp;
	}
	if (*third > *first) {
		temp = third;
		third = first;
		first = temp;
	}
	if (*third > *second) {
		temp = third;
		third = second;
		second = temp;
	}
	printf("排序后的结果为:%d %d %d\n", *first, *second, *third);
	return 0;
}

猜你喜欢

转载自blog.csdn.net/hcmdghv587/article/details/80224977
今日推荐