演示输入以及输出的“*”号用法 以及测定字符长度

程序员成长之旅 · 程序员成长之旅/C语言/自己写的源码 · 362 字

#include<stdio.h> //“scanf”和“printf”的“*”作用演示(意义不同)

#include<float.h>

#include<string.h> //包含“strlen”函数

int main() {

char c_Name1[30] = { 0 }, c_Name2[30] = { 0 };

//测定字符演示

scanf("%s", c_Name1);

printf("%s\t%d\n", c_Name1, strlen(c_Name1));//“strlen”函数测定字符串长度(不包含“\0”)

//输出带E的浮点数

printf("%f\t\n", 3.14e2);

printf(" "" \n");

//输入函数scanf的“*”用法演示

setbuf(stdin, NULL);// 清空标准输入的缓冲区。

scanf("%*c%*c%*c%*c%c%d", c_Name2);//把“” 放在 % 和 转换符  之间 可以跳过指定项

printf("%d\n", c_Name2[0]);

//演示printf *的作用

float f_Num1 = 123.123;

int i_length_1 = 5, i_length_2 = 10;//假设为预设宽度 分别是 5 和 10

int i_Num2 = 12, i_Num3 = 233;

//可以通过参数(变量)来确定字段宽幅

printf("i_Num2=[%d]/t i_Num3=[%d]\n",i_length_1,i_Num2,i_length_2,i_Num3);//第一个参数给“” 确定字段长度 第二个是变量(i_Num2),以此类推 那么第三个参数给“” 第四个是变量(i_Num3)

printf("f_Num1=[%*.f]\n",&i_length_1,i_length_2,f_Num1 );//因为有两个“” 所以需要后面的i_length_1和i_length_2 来告诉程序字段宽度为 5 和 10,  因为只用输出一个变量 所以最后一个才是变量。

return 0;

}

运行截图: