C/C++ 在算法考试中的小技巧

printf("%.2f\n",n);      表示输出格式为2位浮点数;

A?B:C                   表示A为真返回B的结果,若为假则返回C的结果;

printf("%5d",123);     使不足m位的int变量以m位进行右对齐输出输出效果为;

    123

12345

printf("%05d",123);    输出效果为;

00123

12345

char c=getchar();      输入单字符;

putchar();                  输出单字符;

gets(*str);                  输入一行字符并且识别/n作为输入结束

 

当采用scanf()函数输入一个数后会产生一个换行符,必须把这个换行符用getchar()接收后再用gets()函数输入一行字符;不然会出现意想不到的错误;

 

puts(*str);                  输出一行字符并且紧跟一个换行符;

 

使用printf()/puts()函数输出的字符串若是结尾没有/0则会无法识别字符串而出错;

 

memset(a,0,sizeof(a)); 把数组a中的元素全部赋值为0;

 

int len = strlen(str);

 

int cmp = strcmp(str1,str2);    字符串字典序比较大小;

strcpy(str1,str2);     把str1拷贝到str2里面;

strcat(str1,str2);                   把str2接到str1后面;

sscanf("123","%d",&n);        把字符串“123”以整型输入到整数n中;

sprintf(str,"%d",123);            把整数123写到字符串str中;

经典应用:

char str1[100]="2020:3.14,hello",str2[10];
sscanf(str,"%d:%lf,%s",&n;&bd,str2);

getline():

char str[100];
cin.getline(str,100);

 

 

 

 

  

 

你可能感兴趣的:(C/C++ 在算法考试中的小技巧)