锻炼思考——初学C语言的体会(三)

做编程题要能脱离书本,减少看提示,看了提示就更要思考透彻,让自己慢慢脱离书本敲代码。

eg1输入十个不相同的整数并存在数组,找出最大元素并删除

#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>
void main()
{
	int num[26], i; char c;
	for (i = 0; i < 26; i++) num[i] = 0;
	while ((c = getchar()) != '#')
		if (isupper(c)) num[c - 65] += 1;
	for (i = 0; i < 26; i++)
		if (num[i])
			printf("%c:%d\n", i + 65, num[i]);
	system("pause");
}

在这里插入图片描述

eg2从键盘输入若干个整数并求出最大值

#include <stdio.h>
void main()
{
	int i;
	int s[10], max;
	int Findmax(int x[], int n);/* Findmax()函数的申明*/
	printf("Input 10 number : \n");
	for (i = 0; i <= 9; i++)
		scanf_s("%d", &s[i]);/* 输入10 个数据到s 数组中*/
	max = Findmax(s, 10);/* 调用"" Findmax 函数*/
	for (i = 0; i < 10; i++)
		printf("%4d", s[i]);
	printf("\nthe max is %d ", max);
}
int Findmax(int x[], int n)
{
	int max, i;
	max = x[0];
	for (i = 1; i < n; i++)
		if (max < x[i])
			max = x[i];
	return max;
}

在这里插入图片描述
回顾到数组的输入方法,
从两个数比较大小的方法结合数组调用函数实现多个数据比较。
函数的申明比函数的定义中的首行多一个分号,

eg3调试程序,说出其功能

#include<stdio.h>
void main()
{
	int m, k;
	void dtoo(int n, int r);
	printf("Please input the decimal number:");
	scanf_s("%d", &m);
	printf("\nPlease input a number in(2,8,16):");
	scanf_s("%d", &k);
	dtoo(m,k);
}
void dtoo(int n, int r)
{
	if (n >= r) dtoo(n / r, r);
	printf("%d", n%r);
}

在这里插入图片描述
功能:十进制转化为二,八,十六进制
调用两次dtoo函数
第一次dtoo(33 8)33>8
变为dtoo(33/8 8)int型即 dtoo(4 8)
第二次自己调用自己 4<8
printf4%8即 4 返回到第一次调用函数的位置
printf33%8即 1

eg4有一个一维数组score,内放10个学生成绩,求平均成绩

#include<stdlib.h>
#include <stdio.h>
int main()
{
	float average(float array[10]);           // 函数声明
	float score[10], aver;
	int i;
	printf("input 10 scores:\n");
	for (i = 0; i < 10; i++)
		scanf_s("%f", &score[i]);
	printf("\n");
	aver = average(score);                     // 调用average函数
	printf("average score is %5.2f\n", aver);
	return 0;
}

float average(float array[10])             // 定义average函数 声明形参数组大小但不起作用
{
	int i;
	float aver, sum = array[0];
	for (i = 1; i < 10; i++)
		sum = sum + array[i];                  // 累加学生成绩
	aver = sum / 10;
	return(aver);
	system("pause");
}


在这里插入图片描述
用数组名作为函数实参,形参。
在主函数和被调用函数时要分别定义数组,
实参形参类型一致,且形参可以不指定大小。

看不懂要多看,灵活的思考学会自我提问,看透例题。真正理解到意思,

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值