最大整数(25分) 题目内容:
输入3个整数a,b,c,用指针p=&a,q=&b,请用max指向最大整数并输出。输出按照如下格式输出: printf(“max=%d\n”,*pmax);
输入样例:
1,2,3
输出样例:
max=3
在这里插入代码片
#include<stdio.h>
#include<stdlib.h>
int main() {
int a, b, c;
scanf_s("%d,%d,%d", &a, &b, &c);
int *p, *q, *pmax;
p = &a;
q = &b;
pmax = &c;
if (a > c)
pmax = p;
if (b > *pmax)
pmax = q;
printf("max=%d\n", *pmax);
return 0;
}
题目内容: 删除字符串中连续的重复字符(25分)
功能:实现删除字符串中连续的重复字符(除字母和数字)。 输入为字符串,将字符串中连续重复的,非字母和数字的字符删去,然后输出处理后的字符串。要求用指针指向输入的字符串进行操作。
输入格式:
输入字符串最长50个字符,之后截断,只输出处理后的字符串。
输入样例
1+++2==3
输出样例:
1+2=3
注意:尽量不用string库的函数处理,否则可能会出现错误扣分的情况(可能和网站编译系统有关)
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main() {
char a[51];
char b[51];
gets_s(a, 50);
char *p, *q;
p = a;
q = b;
int i = 0,j=0;
while (p[i] != '\0')
{
if (p[i] >= 'a'&&p[i] <= 'z' || p[i] >= '0'&&p[i] <= '9')
{
q[j] = p[i];
i++;
j++;
}
else
{
q[j] = p[i];
int count = 0;
while (p[i + 1] == p[i])
{
count++;
i++;
}
i++;
j++;
}
}
for (int k= 0; k<j; k++)
{
printf("%c", q[k]);
}
return 0;
}
3.比较字符串是否相等(25分) 题目内容:编写程序,输入两个字符串,通过2个指针p和q分别指向这2个字符串,比较字符串是否相等。 要求不使用strcmp函数。
输入格式:string1回车string2回车 string1和string2最长为256,可能包含空格
输出格式:
相等输出: equal不等输出: unequal
输入样例:
string1string2
输出样例:
unequal
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main() {
char *p, *q;
char buffer1[257], buffer2[257];
gets_s(buffer1, 256);
gets_s(buffer2, 256);
int len1 = strlen(buffer1);
int len2 = strlen(buffer2);
if (len1 != len2)
printf("unequal");
else
{
p = buffer1;
q = buffer2;
int i = 0;
int count = 0;
while ((p[i] != '\0')&&(q[i] != '\0'))
{
if (p[i] != q[i])
{
count++;
}
i++;
}
if (count == 0)
printf("equal");
else
printf("unequal");
}
}
- 题目内容:编写程序,输入一个字符串,分别统计输出该字符串中 的字母个数和数字个数。要求用指针指向这个字符串进行处理。
输入格式:
字符串
输出格式:
英文逗号分隔的2个整数,第一个整数是字母个数,第二个整数的数字个数。
输入样例:
the day the month the year 123
输出样例:
21,3
#include<stdio.h>
#include<stdlib.h>
int main() {
char *p;
char buffer[1000];
gets_s(buffer,999);
p = buffer;
int count1 = 0, count2 = 0;
int i = 0;
while (p[i]!='\0')
{
if (p[i] >= 'a'&& p[i] <= 'z' || p[i] >= 'A'&&p[i] <= 'Z')
count1++;
if (p[i] >= '0' && p[i] <= '9')
{
count2++;
}
i++;
}
printf("%d,%d", count1, count2);
return 0;
}