您的位置:首页 > 健康 > 美食 > 牛客 字符逆序,三角形判断(C)

牛客 字符逆序,三角形判断(C)

2024/10/9 23:59:40 来源:https://blog.csdn.net/2303_80645930/article/details/141994561  浏览:    关键词:牛客 字符逆序,三角形判断(C)

题目1(字符逆置)

输入一个字符串str(可以输入空格),将其内容颠倒过来,并输出。

题目链接:

字符逆序__牛客网

解体思路:

我们可以自定义一个逆序函数Reverse。

然后,我们将每个单词倒置过来。

最后再输出整个字符串。

其中,left代表左边,right代表右边,我们通过循环来控制交换的次数,每次循环一次left++,right--.直至跳出循环,完成逆序。

gets()函数 会读取整行输入行,直至遇到换行符,然后丢弃换行符,储存其余字符,并在字符末尾添加一个空字符使其成为C字符串。常和 puts()函数 配对使用。

函数原型:char* gets(char* str);

代码:

#include<stdio.h>
void Reverse(char* str)
{char* left = str;char* right = str + strlen(str) - 1;while (left < right){char temp = *left;//通过中间变量,将字符倒置。*left = *right;*right = temp;++left;--right;}
}int main()
{char str[10000] = {0};gets(str);//使用指针。Reverse(str);printf(str);return 0;
}

题目2(三角形)

三角形判断

KiKi想知道已经给出的三条边a,b,c能否构成三角形,如果能构成三角形,判断三角形的类型(等边三角形、等腰三角形或普通三角形)。

题目链接:

三角形判断_牛客题霸_牛客网

解题思路

判断三条边能否构成三角形,需要满足以下任一条件:

三角形任意两边之和大于第三边。

三角形任意两边之差小于第三边。

我们获取三角形的三个边长后,只需要判断它是否满足上面两个条件之一,如果满足上述条件之一,则可以构成三角形,如果不满足,则不能构成三角形。

在满足上述情况的条件下,如果三条边相等,则构成等边三角形,输出“Equilateral triangle!”。如果两条边相等则构成等腰三角形,输出“Isosceles triangle!”。其余情况则输出“Ordinary triangle!”,反之输出“Not a triangle!”。

#include<stdio.h>
int main()
{int a, b, c;while(scanf("%d %d %d",&a, &b, &c)!=EOF){if(a + b >c && a + c > b && b + c > a){if(a==b&& b == c){printf("Equilateral triangle!\n");}else if(a!=b&&a!=c&&b!=c)printf("Ordinary triangle!\n");elseprintf("Isosceles triangle!\n");}else {printf("Not a triangle!\n");}}return 0;
}

祝大家生活愉快。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com