#include<stdio.h>
int main(){
int arr[4],lowpress,tv;
int dv1,dv2,t,cnt=0,dv_flag,cnt_flag,arr1[4];
//扫描数组和其他元素
for(int i=0;i<4;i++){
scanf("%d ",&arr[i]);
}
scanf("%d %d\n",&lowpress,&tv);
//数组赋值给新数组,以便未来排序打乱后,计算轮胎位置
for(int i=0;i<4;i++){
arr1[i]=arr[i];
}
//计算低于最低胎压的轮胎数,如果存在一个,记录他的胎数
for(int i=0;i<4;i++){
if(arr[i]<lowpress){
cnt++;
if(cnt==1){
cnt_flag=i+1;
}
}
}
//数组值递增排序
for(int i=0;i<4;i++){
for(int j=i+1;j<4;j++){
if(arr[i]>arr[j]){
t=arr[i];
arr[i]=arr[j];
arr[j]=t;
}
}
}
//求第一大差值和第二大差值
dv1=arr[3]-arr[0];
dv2=arr[3]-arr[1];
//根据最大差值寻找轮胎序数
for(int i=0;i<4;i++){
if(arr1[i]==arr[0]){
dv_flag=i+1;
}
}
/*
第一大差值小于阈值且低于最低气压轮胎数为零则正常;
差值:第一大差值大于阈值,且第二大差值小于阈值,输出差值对应的轮胎序数;
*/
if(dv1<tv&&cnt==0){
printf("Normal");
}else if(dv1>tv&&dv2<=tv){
printf("Warning: please check #%d!",dv_flag);
}else if(cnt==1){
printf("Warning: please check #%d!",cnt_flag);
}else if((dv1>tv&&dv2>tv)||cnt>=2){
printf("Warning: please check all the tires!");
}
}
我的代码出现问题,本题希望可以得到大家的指导,谢谢你的帮助!
供参考 :
#include <stdio.h>
int main()
{
int i, TP[4], minalm_TP, TP_th, TP_max, ans, flg;
for (i = 0; i < 4; i++) {
scanf("%d", &TP[i]);
if (i == 0 || TP_max < TP[i])
TP_max = TP[i];
}
scanf("%d %d", &minalm_TP, &TP_th);
for (i = 0, ans = 0, flg = 0; i < 4; i++) {
if (TP_max - TP[i] > TP_th || TP[i] < minalm_TP) {
ans++;
flg = i;
}
}
if (ans == 0)
printf("Normal");
else if (ans == 1)
printf("Warning: please check #%d!", flg + 1);
else if (ans >= 2)
printf("Warning: please check all the tires!");
return 0;
}
【以下回答由 GPT 生成】
这段C语言代码的功能是根据输入的指定条件来判断轮胎的状态。它的运行逻辑如下:
声明了一些变量:arr[4]
是一个整型数组用来存储轮胎的气压值,lowpress
和tv
是两个整型变量分别表示最低气压和阈值,dv1
和dv2
是两个整型变量用来存储差值,t
和cnt
是两个临时变量,dv_flag
和cnt_flag
是两个整型变量用来存储轮胎的序号,arr1[4]
是一个整型数组,用于未来的排序和计算轮胎的位置。
使用for
循环遍历输入,将指定数量的轮胎气压值存储到arr
数组中。
输入最低气压值lowpress
和阈值tv
。
将arr
数组的值复制给arr1
数组。
使用for
循环计算低于最低气压的轮胎数量cnt
,如果存在一个,则记录它的序号cnt_flag
。
使用嵌套的for
循环对arr
数组进行递增排序。
计算第一大差值dv1
和第二大差值dv2
。
使用for
循环查找轮胎序号dv_flag
。
利用条件分支语句进行判断:
dv1
小于阈值tv
且低于最低气压轮胎数为零,则输出"Normal"。如果第一大差值dv1
大于阈值tv
且第二大差值dv2
小于阈值tv
,则输出差值对应的轮胎序号dv_flag
。
返回0表示程序正常结束。
以上是该代码的功能和运行逻辑的解释。
【相关推荐】