牛刀小试(二)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/weixin_45380951/article/details/100112480

1.使用嵌套循环,按下面的格式打印字符

#
##
###
####
#####
嵌套循环解释:
for(){
	for(){
	}
}

解:(*注prov–for.c)

for(i=0;i<5;i++){
	for(j=0;j<=i;j++){
		printf("#");
	}
	printf("\n");
}

2.使用switch计算分数,输入分数,输出等级

90-100 A
70-89 B
60-69 C
<60 D

解:(*prov–switch.c)

int i;
printf("input sorce:\n");
scanf("%d",&i);
i=i/10;
switch(i){
	case 10:
	case 9:
		printf("A\n");
		break;	
	case 8:
	case 7:
		printf("B\n");
		break;
	case 6:
		printf("C\n");
		break;
	default:
		printf("D\n");
		break;

}

3.设计一个函数chline(ch, i, j),打印指定的字符i行,j列。

举例:chline(‘a’, 3, 2) 输出:
aa
aa
aa

解:(*注prov–chline.c)

viod chline(char ch,int i,int j){
	int a;
	int b;
	for(a=0;a<i;a++){
		for(b=0;b<j;b++){
			printf("%s",ch);
		}
		printf("\n");
	}
}

4.编写一个函数mymax(int array[]),返回存储在int类型数组中的最大值。

解:(*prov–max.c)

int mymax(int aray[],int n){
	int i;
	int max;
	max = array[0];
	for(i=0;i<n;i++){
		if(max<array[i]){
			max=array[i];
		}
	}
	return max;
}

5.设计一个函数getmemory,申请100个字节的内存,并将该内存传递回来

解:(**注#prov–getmemory.c)

方法一:

char *getmemory(){
	char *p=malloc(100);
	return p;
}

方法二:(通过传递二级指针实现)

void getmemory(char **p){
	*p=malloc(100);
}

summary:对第五题比较懵,对一级指针和二级指针的理解还不够准确到位,导致用起来比较混乱;总而言之,还待加强。

猜你喜欢

转载自blog.csdn.net/weixin_45380951/article/details/100112480