目录
TEXT 1(函数与三目操作符)
TEXT 2(传参)
TEXT 3(return)
TEXT 4(取商和取模)
TEXT 5(ASCII码)
TEXT 6(设置域宽)
TEXT 7(转义字符)
TEXT 8(for循环)
TEXT 9(找最大数)
TEXT 10(冒泡排序)
写一个函数,输入两个不同的整数,求较大的那一个。
int max(int x, int y)//需要返回值,所以设置成int,如果不需要返回值,可以设置void
{
return (x > y ? x:y);//三目操作符(条件操作符)
}
#include
int main()
{
int a = 0, b = 0;
scanf("%d%d", &a, &b);
printf("较大的那个数是%d\n", max(a, b));
return 0;
}
介绍一下三目操作符:
当函数需要返回值时,将函数类型设置为int,再return一个整型即可。如果函数不需要返回值,将函数类型设置为void即可。
因为a、b都是整型变量,所以将a、b的参数传给max函数时,max函数也需要用整型去接收,这里a和b是实参,x和y是形参,形参是实参的临时拷贝,改变形参并不会改变实参,如何通过形参改变实参呢?看TEXT 2。
写一个函数,交换两个变量的数值。
void change(int* px, int* py)//因为穿的是地址,所以要用指针接收,px、py为指针变量
{
int i = 0;
i = *px; //通过地址找到a、b的值,间接改变a、b
*px = *py;
*py = i;
}
int main()
{
int a = 10, b = 20;
printf("交换前:a=%d,b=%d\n", a, b);
change(&a, &b);//用取地址符号,将a、b的地址传给函数
printf("交换后:a=%d,b=%d\n", a, b);
return 0;
}
通过地址可以实现改变实参,这里我们通过取地址符号将a、b的地址传给px、py,因为传的参数是整型,这里用整型指针int*接收,px、py就是指针变量,存放着a、b的地址。
假设a的地址为0x0012ff40,b的地址为0x0012ff44,当我们通过取地址符号将a、b的地址传给px、py后,px、py里面存放的就是a和b的地址,通过改变地址里存放的数据,进而间接改变a、b的值。数组传参时,传的是首元素的地址。
已知一个函数y=f(x),当x < 0时,y = 10;当x = 0时,y = 0;当x > 0时,y = -10
输入一个整数x(-10000 在定义的函数中,如果包含多层嵌套,可以用return跳出函数,直接返回。 给定两个整数a和b (0 < a,b < 10,000),计算a除以b的整数商和余数。 %%为转义字符,作用是显示%。 字符常量或字符变量表示的字符在内存中以ASCII码形式存储。转换以下ASCII码为对应字符并输出他们。73, 32, 99, 97, 110, 32, 100, 111, 32, 105, 116 , 33 putchar也可以用ASCII码输出对应的字符,但是putchar每次只能输出一个字符,想要输出字符串比较麻烦。 输入一个人的出生日期(包括年月日),年月日之间的数字没有分隔符,将该生日中的年、月、日分别输出。 通过设置域宽让scanf截取数据,例如%4d的意思是:域宽为4,在其中的数据会存放到year里。 在屏幕上打印 printf("Hello world!\n"); cout << "Hello world!" << endl; 当想打印的内容与转义字符混淆时,在其面前加入一个\即可,例如想打印一个“\n”,只需要“\\n”即可。 打印1-100之间所有3的倍数的数字 改代码还可以写成: 基于我们对数学的了解,可以直接设置每次打印3的倍数,省略判断的部分。 获得4名同学的成绩,编程找到最高分。 因为成绩不可能是负数,所以假设最高分为0分,每次输入成绩时都判断一下,如果比当前最高分高,则更新最高分。(该方法的好处是每次输入数据之后都会判断,当输入完成后结果也判断出来,非常简便迅速) 写代码将给定的5个整数数按从小到大输出。 冒泡排序的核心思想为相邻两个数比大小,大的往后站。第一轮排序可以找到最大值,第二轮排序可以找到第二大的值,当排序进行到第n-1轮时,顺序已然排好了。#include
TEXT 4(取商和取模)
#include
TEXT 5(ASCII码)
#include
TEXT 6(设置域宽)
#include
TEXT 7(转义字符)
#include
TEXT 8(for循环)
#include
#include
TEXT 9(找最大数)
#include
TEXT 10(冒泡排序)
#include