说明
这些程序是我在专升本期间在CSDN上上传的作业、练习等,仅为学习备考的一小部分程序,整理成一篇文章,方便专升本的学弟学妹参考。
时间:2021年~2022年专升本期间
题目:输入一个字符串,将其数字符号选出按顺序组成一个整数并输出到屏幕上。
例如:输入-3#45^67@,得到-34567;输入3#4-5*67,得到34567。
#include<stdio.h>
#include<string.h>
int main()
{char s[50];int i,n=0; //错误1:n没赋初值 gets(s); //错误2:gets写成了get() if(s[0]=='-')putchar(s[0]);for(i=0;i<strlen(s);i++){if(s[i]>='0'&&s[i]<='9'){//错误3:①②写反了 n*=10; //②n+=s[i]-'0'; //① 错误4:写成了 n=s[i]-'0'; }}printf("%d",n);return 0;}
运行结果1:
输入:-3#45^67@
输出:-34567
运行结果2:
3#4-5……67@
34567
//计算长度 #include<stdio.h>
int main()
{char *str1 = "abcdefg", *str2;str2 = str1; while(*str1++);{str1++;}printf("%d",str1 - str2); //9
}
//链接字符串
#include<stdio.h>int main()
{char s1[30] = "abcdefg",s2[30] = "hijklmn";char *str1 = s1 , *str2 = s2;while(*str1){str1++;}while(*str2){*str1++ = *str2++;}printf("%s",s1); //abcdefghijklmn //输出数组名,不要输出指针名。
// printf("%s",str1); //无输出结果,因为此时str2指向了0 }
#include<stdio.h>int main()
{char str1[30] = "abcdefghiklmn",str2[30] = "asdljgs";char *s1 = str1 , *s2 = str2;while(*s2){*s1 = *s2;s1++;s2++;}*s1 = '