『壹』 c語言累加和校驗

用位運算按位與得出校驗數,參考代碼如下:
#include<stdio.h>
int main()
{
char str[101];
int i,sum;
gets(str);
i=sum=0;
while(str[i]!=0)
sum+=str[i++];
printf("%d",sum&(0x0FF));
return 0;
}

『貳』 C語言判斷

switch(choice){
case 1: price = 3.0; break;
case 2: price = 2.5; break;
case 3: price = 4.0; break;
case 4: price = 3.5; break;
default: price = 0.0; break;
}
應該是抄這樣,不用加判斷語句

『叄』 C語言實現CRC8校驗

不知道你抄說的CRC是不是網路上的CRC,網路上的CRC原理是商定一個除數,然後將發送數據除以除數的余數作為CRC校驗碼一起發送,最後接收到的數據也除以這個除數,如果沒有錯誤除的結果為0,但是這個校驗機制是不能判斷出原發送碼中哪裡出錯的

『肆』 C語言實現CRC校驗

把我知道的說一下:
碼流後面加8個0可以用移位得到(碼流<<8;)
單次異或運算可以用運算符專:^(運算符兩邊為常屬數)
由於你校驗的是5個位元組,且要多次異或運算,所以得藉助數組,或其它的數據結果才能完成。
最後問一下你是做硬體的嗎

『伍』 c語言計算檢驗和。。。。。。。。

第一段是將高nleft/2位的數字累加第二段式說 如果nleft=1 sum等於 w的高位第三段 將sum的高十六位移到地十六位 並與原sum的低16位相加然後再把得到的這個數取反 至於這句話sum+=(sum>>16); 我也沒太看懂sum已經剩下低16位了再右移不久是0了嗎 加0有什麼意義呢?這大概是一個校驗碼的生成方法你對照這個方法看代碼應該就很容易理解了我現在看代碼也就是看看代碼再干什麼

『陸』 C語言程序如何校驗和執行

Ctrl+F9 - Alt+F5 反正不管哪個版本 先組建再編譯 系統就自動檢查是否有錯誤 最後在運行就OK了。

『柒』 校驗和的C語言解答

【temp=temp+*chk8;】

temp加上 chk8地址上的值 再復制給temp
【if(temp<*chk8)】

如果temp小於chk8地址上的值
temp自增

chk8位置自增

*chk8 你可以當它是個變數
chk8 的值是一個地址
chk8++ 指針往後移,後移的大小和指針指向類型大小一樣.

『捌』 如何用c語言實現驗證碼的校驗

什麼校驗方法?
CRC檢驗如下:

#include<stdio.h>

int binaryToDec(char *str)
{
unsigned n=0;
while(*str!='\0')
{
if(*str<'0'||*str>'9')return -1;
n=n*2+(*str-'0');
str++;
}
return n;
}

void printBinary(int n)
{
if(n>1)printBinary(n/2);
printf("%d",n%2);
}

void main()
{
unsigned n,m,CRC=0x1A8000,fD=0x100000;
char CRC16[32];

while(1)
{
printf("輸入16位校驗碼:");
gets(CRC16);
n=binaryToDec(CRC16);
if(n>65535)
printf("輸入值過長,請重新輸入\n");
else break;
}

n<<=5;//n左移5位
m=n;//m等於
while(fD>0x20)
{
while( !(m&fD) && !(CRC&1) )//保證被除數第一位為1
{
CRC>>=1;//除數右移一位
fD>>=1;//被除數首位的標志位右移一位
}
m=m^CRC;//被除數與除數相異或
}
n+=m;//模二餘數相加

printf("輸出21位校驗碼:");
printBinary(n);
printf("\n");

getchar();
}

『玖』 用C語言校驗ISBN碼是否合法

#include<stdio.h>
voidmain()
{
charisbn[11];
inti,sum;
printf("inputisbn:");

for(i=0;i<10;i++)
{
scanf("%c",&isbn[i]);
}
isbn[10]='';
sum=0;
for(i=1;i<=9;i++)
{
sum+=i*(isbn[i-1]-'0');
}
if(sum%11==isbn[9]-'0')
printf("yes! ");
else
printf("no! ");
}