初始C语言(2)

1.多次输入模板

while (scanf("%d", &a)!=EOF )//多组输入

例题:

 题解:

#include<stdio.h>
int main()
{
    int a,b;
    while(scanf("%d %d",&a,&b)!=EOF)
    {
        if(a>b)
        {
            printf("%d>%dn",a,b);
        }
        if(a<b)
        {
            printf("%d<%dn",a,b);
        }
        if(a==b)
        {
            printf("%d=%dn",a,b);
        }
    }
    return 0;
}

运行结果为:

 

 2.static修饰局部变量

基本概念:

 上代码比较:

void test()
{
	int a = 5;
	a++;
	printf("%d", a);
}
int main()
{
	int m = 0;
	while (m < 10)
	{
		test();
		m++;
	}
	return 0;
}

运行结果:


 

但是如果加上了static


 

void test()
{
	static int a = 5;
	a++;
	printf("%d ", a);
}
int main()
{
	int m = 0;
	while (m < 10)
	{
		test();
		m++;
	}
	return 0;
}

运行结果:

 具体原理:

 普通的数据类型储存的数组储存在栈区,按照本例子理解就是每次执行完test后,改数据就结束了自己的生命周期就会被销毁,如果加入static会使得改数据储存在静态区。

 3.字符串的结束符举例

上代码:

int main()
{
	printf("abcdefn");
	printf("abcdef");
	return 0;
}

运行结果:

 4.逗号表达式

概念:逗号表达式,表达式会从左到右以此计算

整个表达式的结果是最后一个表达式的结果

举例:

 5.一些小知识

一:求字符串的长度

先用头文件string.h

再引用库函数strlen

strlen计算的是之前字符的个数。

二:

汉字占两个字节

要打印怎么做?

printf(“%c”,''');

 三:常见关键字(拓展)

 最后附上学习代码:

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
/*
int main()
{
    printf("     **n");
    printf("     **n");
    printf("************n");
    printf("************n");
    printf("    *  *n");
    printf("    *  *n");

    return 0;
}
*/
int main()
{
    printf("     **     n");
    printf("     **     n");
    printf("************n");
    printf("************n");
    printf("    *  *    n");
    printf("    *  *    n");

    return 0;
}




#include <stdio.h>

int main()
{
    //输入
    int x = 0;
    int y = 0;
    scanf("%d", &x);

    //计算
    if (x < 0)
        y = 1;
    else if (x == 0)
        y = 0;
    else
        y = -1;
    //输出
    printf("%dn", y);

    return 0;
}

#include <stdio.h>

int main()
{
    int m = 0;
    //输入
    scanf("%d", &m);

    //输出
    if (m % 5 == 0)
        printf("YESn");
    else
        printf("NOn");

    return 0;
}

#include <stdio.h>

//
//scanf函数在调用失败的时候,读取失败的时候,会返回EOF
//EOF -- end of file
//

int main()
{
    //输入
    int iq = 0;
    while (scanf("%d", &iq) != EOF)
    {
        if (iq >= 140)
        {
            printf("Geniusn");
        }
    }

    return 0;
}

#include <stdio.h>

int main()
{
    printf("Name    Age    Gendern");
    printf("---------------------n");
    printf("Jack    18     mann");

    return 0;
}

#include <stdio.h>

int main()
{
    int a = 0;
    int b = 0;
    //输入
    scanf("%d %d", &a, &b);
    //输出
    printf("%d %dn", a / b, a % b);

    return 0;
}

#include <stdio.h>

int main()
{
    int a = 40;
    int c = 212;
    //int ret = (-8+22)*a-10+c/2;

    printf("%dn", (-8 + 22) * a - 10 + c / 2);

    return 0;
}


//void test()
//{
//	int b = 0;
//
//}
//
//int main()
//{
//	int a = 10;
//
//	return 0;
//}

#include <stdio.h>

//int num = 10;
//
//int main()
//{
//    int num = 1;
//    printf("num = %dn", num);//1
//    return 0;
//}


//int main()
//{
//	printf("abcdef");
//	return 0;
//}

//int main()
//{
//	int arr[] = {1,2,3,4,5};
//	int a = 0;
//
//	return 0;
//}


//#include <stdio.h>
//#include <string.h>
//int main()
//{
//    printf("%dn", strlen("c:test121"));
//    return 0;
//}




#include <stdio.h>
#include <string.h>
//
//int main()
//{
//    char arr[] = { 'b', 'i', 't' };
//    printf("%dn", strlen(arr));
//    return 0;
//}
//
//
//int get_max(int x, int y)
//{
//	if (x > y)
//		return x;
//	else
//		return y;
//}
//
//int main()
//{
//	int n1 = 0;
//	int n2 = 0;
//	//输入
//	scanf("%d %d", &n1, &n2);
//	//求2个整数的较大值
//	int m = get_max(n1, n2);
//	//输出
//	printf("%dn", m);
//
//	return 0;
//}
//
//int main()
//{
//	//C语言中,0表示假,非0表示真
//	//int flag = 5;
//	//if (!flag)
//	//{
//	//	printf("hehen");
//	//}
//	//int a = -10;
//	//int b = +a;
//	//printf("%dn", b);
//
//	//int a = 10;
//	//printf("%dn", sizeof(a));//单位是字节
//	//printf("%dn", sizeof(int));
//
//
//	//int a = 10;
//	//int b = a + 1;
//	//int b = ++a;//前置++,先++,后使用//a = a+1; b=a;
//	//int b = a++;//后置++,先使用,后++ //int b = a;a=a+1;
//
//	//int b = --a;//a=a-1;b=a;
//	//int b = a--;//b=a;a=a-1
//
//	//printf("a=%d b=%dn", a, b);//9 10
//
//	//int a = 1;
//	//int b = (++a) + (++a) + (++a);//错误的代码
//	//printf("%dn", b);
//
//	return 0;
//}

//int main()
//{
//	int a = (int)3.14;
//	printf("%dn", a);
//
//	return 0;
//}

//int main()
//{
//	int a = 10;
//	if (a >= 10)
//	{
//		printf("hehen");
//	}
//	return 0;
//}

//int main()
//{
//	int a = 5;
//	if (5 = a)
//	{
//		printf("hehen");
//	}
//	return 0;
//}
//
//int main()
//{
//	int a = 5;
//	int b = 5;
//	if ((a == 3) || (b == 4))//或者
//	{
//		printf("hehen");
//	}
//
//	//if ((a == 3) && (b == 4))//并且
//	//{
//	//	printf("hehen");
//	//}
//	return 0;
//}

//int main()
//{
//	int a = 3;
//	int b = 5;
//	int m = 0;
//	
//	if (a > b)
//		m = a;
//	else
//		m = b;
//
//	//m = (a > b) ? (a) : (b);
//
//	printf("%dn", m);
//	return 0;
//}



//调试开始 - f10
//fn+f10


//int main()
//{
//	int a = 3;
//	int b = 20;
//	int c = 0;
//	int d = (a -= 3, b += a, c = a - b, b = a - 4);
//	printf("d=%dn", d);
//	return 0;
//}

//int main()
//{
//	int arr[10] = { 0 };
//	//0~9
//	arr[5] = 9;//[] - 下标引用操作符,他的操作数:数组名,下标
//
//	return 0;
//}

//int get_max(int x, int y)
//{
//	if (x > y)
//		return x;
//	else
//		return y;
//}
//
//int main()
//{
//	int m = get_max(3, 5);//()函数调用操作符,他的操作数是:函数名,3,5
//
//	return 0;
//}
//
//

//int main()
//{
//	{
//		int a = 10;
//		//
//	}
//
//	return 0;
//}

//unsigned int num = 10;
//
//typedef unsigned int uint;
//
//uint num2 = 10;
//
//int main()
//{
//	int num = 10;//4个字节
//	register int num2 = 20;//建议将20放在寄存器中
//
//	return 0;
//}

//static修饰局部变量

//void test()
//{
//	static int a = 5;
//	a++;
//	printf("%d ", a);
//}
//
//int main()
//{
//	int i = 0;
//	while (i<10)
//	{
//		test();
//		i++;
//	}
//
//	return 0;
//}

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>